This invention relates broadly to a method and apparatus for displaying input/output data of an analytical program. More specifically, the invention relates to an analytical data display method and apparatus for graphically displaying a plurality of analytical models and analytical results on a single display screen.
The recent improvement in the performance of computers has been accompanied by widespread numerical experimentation, which is centered on the finite element method, as one means of performing design, and the importance of such experimentation is growing year by year. In terms also of the content of numerical experiments, there has been a shift from conventional two-dimensional analysis to four-dimensional analysis, which includes the three dimensions and a time axis as well. It has now become possible to analyze actual phenomena as is.
Thus, increasingly complex numerical experimentation has become possible, and this has been accompanied by an enormous increase in input/output data. In particular, in the case of a discrete solution centered on the finite element method, enormous subdivision of elements is required because of the nature of this solution, an analysis of several hundred thousand elements has become ordinary. In recent years, therefore, it becomes essential to create these data and display results using computer graphics. A designer studies the output figures created using computer graphics and reflects these in the design.
At the stage at which the designer studies the results of computation, there are often cases where the designer wishes to scrutinize output graphics from various angles. In other words, it often becomes necessary to display several drawing plans simultaneously side by side and compare them. If structural analysis of a model having a three-dimensional shape is taken as an example, ascertaining the state of deformation and the state of stress distribution is fundamental. To accomplish this, it is necessary that a deformation drawing, arrow drawing and contour-line drawing displaying these states be laid out side by side as drawing plans observed from various angles obtained by changing the point of view, the display area, etc.
In the prior art, there are two methods of laying out a plurality of plans side by side. The first method involves making hard copies of plans displayed on a graphics display (hereinafter referred to simply as a "display") and scrutinizing the hard copies side by side. This method is a primitive one. However, if the plan outputted on the hard copy takes up the full screen, it will not matter if the resolution of the hard copy apparatus is somewhat low. The second method entails displaying a plurality of plans on a display simultaneously. Since hard copies are not made, the plans can be compared and studied in a short period of time and the cost involved is low. However, since the individual plans are small, difficulties are encountered when a low-resolution display is used. Nevertheless, most modern displays have the resolution needed and most analytical data display apparatus presently available make it possible to freely select the number of plans that can be displayed on the display.
In a display apparatus capable of displaying a plurality of plans on a display screen, it is necessary that the display screen have a section for entering instructions on the screen and a section for displaying messages. Since these sections are displayed on the display at the same time, the area which displays the plans becomes even smaller. Recently, many of these display apparatus have come to employ a window system typified by the X Window System. The X Window System was developed at the Massachusetts Institute of Technology as basic means for realizing a GUI (graphical user interface) at a UNIX workstation. The system was made generally available as Version 10 in 1986. Version 11, which was a great improvement on earlier problems and featured extended functionality, was released in 1987. At present, Version 11 has solidified its standing as the industrial standard. The details of X Windows are described in "X-Window Ver. 11 Programming" Nikkan Kogyo Shimbunsha (1989)!. One advantage of X Windows is that the following excellent user-interface features below can be provided.
(1) A plurality of windows can be created freely and individual windows can be used independently as if they were each a single display device.
(2) It is easy to create and erase windows.
(3) The positions and sizes of windows can be changed at will.
(4) It is possible to display a plurality of windows in superimposed form and to change the manner in which they are superimposed.
(5) Basic drawing functions for points, lines, rectangles, circular arcs and polygons are furnished.
These advantages are the reasons why the windows system is used in display apparatus for displaying analytical data.
FIG. 4 illustrates the construction of a user interface in an analytical data display apparatus using the X Windows System. As shown in FIG. 4, the apparatus includes a graphic display 31, a keyboard 32 and a mouse 33. The user enters instructions using the keyboard 32 or mouse 33 and displays drawing plans on the graphic display 31.
FIG. 5 illustrates the arrangement of a program, data and windows in the apparatus of FIG. 4. A program section 52 and a data section 53 are stored in the memory of a computer. Windows 51, 54 allow user input/output and are displayed on the graphic display 31. Instructions and data from the user are entered by the keyboard 32 and mouse 33, and the input is performed via the window 51, which is for entering instructions and data. Analytical data are read in from another memory unit when the display apparatus is started up or in response to an instruction from the user, and the data are stored in the data section 53. Viewpoint data for displaying plans also are stored in the data section 53. A drawing plan is drawn in the display window 54 in accordance with the viewpoint data. A plurality of viewpoint data are held in the data section 53 to deal with a case in which a plurality of plans are drawn in the display window.
It should be noted that a viewpoint vector, a view-up vector, the distance between a model and a viewpoint and display range, which are for displaying a plan in the display area, shall all be referred to collectively as "viewpoint data". Rotation, translation, enlargement and reduction of a display model shall all be referred to collectively as a "change in viewpoint". Further, the viewpoint data are matrix data, and a plan is drawn in the display window 54 by performing an operation between the analytical data and a matrix. Accordingly, changing the viewpoint is equivalent to entering data from the instruction/data input window 51 and changing the matrix. With regard to the matrix, appropriate values are set as a default when the apparatus is started up.
FIG. 6 illustrates what is presented on a display screen in the analytical data display apparatus according to the prior art. The shaded area 11 is a root window, which is the basic window in X Windows. The root window occupies the entire display area of the display screen and cannot be changed in size or position. Further, new windows can be generated from the root window, and all generated windows are positioned as progeny of the root window. These can be displayed only within the area of the root window.
The user employs the mouse 33 to click on a suitable instruction among instructions displayed in an instruction/selection window 12 and causes the target plan to be displayed. Here a display window 13 is divided into three display areas (1, 2 and 3) 43 in such a manner that three plans can be displayed simultaneously. A data input window 16 is a window for entering data from the keyboard 32. The instruction/section window 12, display window 13 and data input window 16 are positioned as progeny of the root window 11. Here the instruction/section window 12 is displayed on the display window 13. However, the layout of these windows differs depending upon the program and all of the windows, with the exception of the root window, can be changed freely in terms of their position, size and overlap. In an actual apparatus, there are various other windows and instructions besides those mentioned above, but these are not shown here.
A conventional procedure for presenting a display using this display system will now be described. It will be assumed in this example that plans in which the viewpoint is changed by rotating an analytical model are displayed in respective ones of the display windows 1, 2 and 3.
(1) The display areas are set to concur with the number of plans to be displayed. Since three plans are displayed, the three display areas 1, 2 and 3 are set, as illustrated in FIG. 6. In general, a display area is set by using the mouse to click two corners of the display area in the display window.
(2) "DISPLAY" is selected from the instruction/section window 12 by the mouse, and the data input window is used to enter "1" as the number of the display area to be displayed. As a result, a plan of the analytical model according to the present viewpoint data is displayed in the display area 1.
(3) "ROTATE" is selected from the instruction/section window 12 by the mouse and the data input window is used to enter the angle of rotation and "2" as the number of the area to be displayed. As a result, the rotated plan is displayed in the display area 2.
(4) "ROTATE" is selected from the instruction/section window 12 by the mouse and the data input window is used to enter an angle for further rotation and "3" as the number of the area to be displayed. As a result, a further rotated plan is displayed in the display area 3.
It should be noted that the enlargement, reduction and translation of the display model can also be effected by the instruction/section window 12 at the same time. The specific procedures for entering the instructions that change the positions of the viewpoints are multifarious and depend upon the program. These are not of particular important and need not be described here.
The conventional method of displaying analytical data described above has the following disadvantages:
(1) In a case where a plurality of drawing plans are displayed at the same time, the display areas for the individual plans become increasingly smaller as the number of plans increases. In other words, in order to present a display by partitioning the display window 13 into small display areas, each individual display area becomes small if a plurality of plans are displayed simultaneously. PA1 (2) Defining the display areas takes time. In addition, it is difficult to neatly arrange the display areas. As described above, a display area generally is defined by clicking two corners using the mouse. However, since the precise position of the mouse on the screen is not known, the user only defines the display area in terms of a suitable position and size. PA1 (3) Changing the layout of the display areas takes as long time. Three display areas have been defined in FIG. 6. In a case where it is desired to make one of them a little larger, the other two display areas must also be redefined by the user. PA1 (4) In a case where a plurality display areas are defined, painting of the displays takes a lot of time. For example, in step (3) of the display procedure described above, the plans in the display windows all vanish in response to the display instruction, then the plan in display area 1 is re-painted, followed by the painting of the plan in display area 2. The same is true with regard to step (4). In order to paint the plan in one display area, the plans in all of the other display areas are erased and then the plans in all of the other display areas are painted again in accordance with each item of viewpoint information. Thereafter, the plan in the target display area is painted. This is because it is necessary to erase the plans of the preceding screen from the display areas in order to effect painting. This arises from the fact that an erasure of a plan in one display area cannot be carried out independent of the other display area. PA1 (5) It is not easily possible for just one plan among a plurality of displayed plans to be displayed upon temporarily enlarging its display area. In order to enlarge one plan, it is required that the display areas be set again and the plans displayed. In order to subsequently restore the original state, the restoration must begin with setting of the plurality of display areas.